The EXPO Software

Two pieces of software have been written to serve the EXPO: the visitor counting program and the map handling program (the mapper).

The visitor counting program is a simple program that is connected to a special UNIX socket on the host machine. Whenever your browser talks to this socket, the program starts running (this is handled by the inet daemon). The program reads a 7 digit number from a file, increments it and writes the result back to that file. During that operation the file is locked, so no other program can change the counter in any way. The incremented number is then converted to a bitmap, which is returned to the browser. A cache included in xmosaic stores the image for later use, during the same session, so xmosaic doesn't need to retrieve it again. If it would retrieve it, the counter would be incremented again, giving false readings of the visitor count. If the counter program would have returned the number in readable text, instead of an image, then xmosaic wouldn't store it in the cache and the number would increment every time you retrieved the ticket office document (the number is displayed only on that document). The visitor counting program is not intended to be a true counting program and it is doubtful that a really good counting program could be written. The source code of the program is freely available.

fetch the visitor counting program.

The other piece of software written for this exhibit is the mapper. This program is the power behind the EXPO terrain map. It decodes the mouse coordinates, and can return a file depending on the coordinates. The file must be present on the system the mapper runs on. Some of the features built into the mapper are:

Using the newer communication protocol it would be possible to return any file on the world (using its Universal Resource Locator (URL)). The program would fit best into the daemon that handles the communications between the browser and the server, but this was not implemented here. The mapper program is also freely available.

fetch the mapper program.

The pbmplus programs, xpaint program and the xv program, used for the image processing are available in the public domain. The latest version of xv however is shareware:

fetch xpaint version 2.1.1 (556 kByte)

fetch public domain xv version 2.21 (1944 kByte)

fetch shareware xv version 3.00a (2910 kByte)

fetch pbmplus programs (678 kByte)

If you are fetching any of the above programs and are using xmosaic, then you might want to switch to binary transfer (in the options menu of xmosaic).

Acknowledgements

I wish to thank Xtreme Graphics Software for the use of their computer, Marc Andreessen & Eric Bina for the development of xmosaic, Kathryn Ellis for here assistance with the data from the Library of Congress, Jeff Barry for the work he did on two of the currently six exhibits, and Robert Guralnick & David Polly for the Paleontology data. David Koblas wrote the very nice xpaint program and John Bradley is responsible for the xv program. The pbmplus collection is maintained by Jef Poskanzer. Marianne Gaasbeek, Rudi van Drunen, and Robert Guralnick suggested improvements in the draft.

I can be reached via email at hoesel@chem.rug.nl